# -*- mode: python ; coding: utf-8 -*-


a = Analysis(
    ['exe_test.py'],           # 要打包的主脚本
    pathex=[],                 # 搜索路径，通常留空就行
    binaries=[],               # 额外要打包的二进制文件
    datas=[],                  # 额外要打包的非Python数据文件
    hiddenimports=[],          # 如果pyinstaller没检测到的模块，可以在这里指定
    hookspath=[],              # 自定义hook路径
    hooksconfig={},            # hook配置
    runtime_hooks=[],          # 运行时hook
    excludes=[
    "PyQt5.QtQml",
    "PyQt5.QtQuick",
    "PyQt5.QtWebEngine",
    "PyQt5.QtMultimedia",
    "PyQt5.QtSvg",
    ],               # 排除的模块
    noarchive=False,           # True: 不打包PYZ压缩文件（调试用）
    optimize=1,                # 代码优化级别（0~2,0是不优化，2是优化最大）
)

pyz = PYZ(a.pure)

exe = EXE(
    pyz,
    a.scripts,                  # 主脚本
    [],
    exclude_binaries=True,      # 不包含二进制（交由COLLECT收集）
    name='exe_test',            # EXE文件名
    debug=False,                # 是否开启调试
    bootloader_ignore_signals=False,
    strip=False,                # 是否去掉符号表（减小体积）
    upx=True,                   # 是否用upx压缩
    console=False,               # True=命令行程序 False=窗口程序
    disable_windowed_traceback=False,
    argv_emulation=False,       # macOS用，Windows忽略
    target_arch=None,
    codesign_identity=None,     # macOS签名
    entitlements_file=None,     # macOS沙盒
    #icon='',                   # 设置图标
)

coll = COLLECT(
    exe,
    a.binaries,      # 所有二进制依赖
    a.datas,         # 所有数据文件
    strip=False,
    upx=True,
    upx_exclude=[],
    name='exe_test',
)
